/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package web;


import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import javax.ejb.EJB;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.context.FacesContext;
import org.birrap.ejb.BaresCervezasTapasVasosTBeanLocal;
import org.birrap.ejb.BaresTBeanLocal;
import org.birrap.ejb.BaresUsuarioTBeanLocal;
import org.birrap.ejb.CervezasTBeanLocal;
import org.birrap.ejb.OfertasTBeanLocal;
import org.birrap.ejb.TapasCervezaTBeanLocal;
import org.birrap.ejb.VasosTBeanLocal;
import org.birrap.entities.BaresCervezasTapasVasosT;
import org.birrap.entities.BaresCervezasTapasVasosTPK;
import org.birrap.entities.BaresT;
import org.birrap.entities.BaresUsuarioT;
import org.birrap.entities.CervezasT;
import org.birrap.entities.OfertasT;
import org.birrap.entities.TapasCervezaT;
import org.birrap.entities.UsuariosT;
import org.birrap.entities.VasosT;
import org.primefaces.event.FileUploadEvent;
import org.primefaces.event.map.OverlaySelectEvent;
import org.primefaces.model.map.DefaultMapModel;
import org.primefaces.model.map.LatLng;
import org.primefaces.model.map.MapModel;
import org.primefaces.model.map.Marker;
import util.FacesMessagesUtil;

/**
 *
 * @author Denver
 */
@ManagedBean
@SessionScoped
public class PerfilEditarManagedBean {
    
    @EJB
    private BaresUsuarioTBeanLocal baresUsuarioBean;
   
    @EJB
    private BaresTBeanLocal baresTBean;
    
    @EJB
    private BaresCervezasTapasVasosTBeanLocal baresCervezasTapasVasosBean;
    
    @EJB
    private CervezasTBeanLocal cervezasTBean;
    
    @EJB
    private VasosTBeanLocal vasosBean;
    
    @EJB
    private TapasCervezaTBeanLocal tapasBean;
    
    @EJB 
    private OfertasTBeanLocal ofertasTBean;
    
    
    private List<BaresCervezasTapasVasosT> listaCervezas;
    
    private List<OfertasT> listaOfertas;
   
    
    private UsuariosT usuario;
    
    private BaresT barT;
    
    private CervezasT cerverzaT;
    
    private VasosT vasoT;
    
    private TapasCervezaT tapaT;
    
    private OfertasT ofertaT;
    
    private List<VasosT> listaVasosT;
    
    private BaresUsuarioT barUsuarioT;
    
    private String precio;
    
    private BaresT barTUlitmo;

    private FacesContext  context;
    
    private MapModel advancedModel; 
    
    private MapModel emptyModel;  
        
    private double lat = 37.3753708;    
    private double lng = -5.9550582;  
  
    private Marker marker;
    
    private boolean renderTabla;
    private boolean renderTabla2;
    
    private String fotoBar = null;
    
    private Double centerLatitude;
    private Double centerLongitude;
    
    private boolean isTelefono = false;
    
    private BaresCervezasTapasVasosT selectedCerveza;
    
    private OfertasT selectedOferta;
    
    private static final String RUTA_IMAGEN = "/images/bares/";
    private static final String IMAGEN_NO_DISPONIBLE = "imagenNoDisponible.jpg";

    /**
     * Creates a new instance of PerfilEditarManagedBean
     */
    public PerfilEditarManagedBean() {
        barUsuarioT = new BaresUsuarioT();
        barT = new BaresT();
        advancedModel = new DefaultMapModel();  
        context = FacesContext.getCurrentInstance();
        usuario = (UsuariosT)context.getExternalContext().getSessionMap().get("usuario");
        listaVasosT = new ArrayList<VasosT>();
        emptyModel = new DefaultMapModel(); 
        cerverzaT = new CervezasT();
        tapaT = new TapasCervezaT();
        vasoT = new VasosT();
        renderTabla = false;
        renderTabla2 = false;
        listaCervezas = new ArrayList<BaresCervezasTapasVasosT>();
        listaOfertas = new ArrayList<OfertasT>();
        ofertaT = new OfertasT();
        barTUlitmo= new BaresT();
    }
    
     private void initializeMap ()
    {
        //Shared coordinates  
        if (barUsuarioT.getBaresT().getLatitud() != null && barUsuarioT.getBaresT().getLongitud() != null) 
        {
            LatLng coord1 = new LatLng(barUsuarioT.getBaresT().getLatitud(), barUsuarioT.getBaresT().getLongitud());  
            this.setCenterLatitude(barUsuarioT.getBaresT().getLatitud());
            this.setCenterLongitude(barUsuarioT.getBaresT().getLongitud());

            //Icons and Data   
            advancedModel.addOverlay(new Marker(coord1, barUsuarioT.getBaresT().getNombre(), fotoBar, "images/maps/bar1.png"));
        }
        else
        {
            advancedModel = new DefaultMapModel();
        }
    }
     
     public void updateLocal() {        
        String res = "ERROR";
        context = FacesContext.getCurrentInstance();
        barT = barUsuarioT.getBaresT();
        barT.setLatitud(lat);
        barT.setLongitud(lng);
                
        if(validateLocal()) 
        {
            BaresT local = baresTBean.update(barT);

            if(local == null) 
            {
                context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, 
                                                          "El local no ha podido ser actualizado.", 
                                                          "El local no ha podido ser actualizado."));
                res = "ERROR";
            }
            else 
            {
                context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, 
                                                          "El local ha sido actualizado.", 
                                                          "El local ha sido actualizado."));
                res = "OK";
            }
        }
        
    }
        
    private boolean validateLocal() {
        
        boolean validado = false;
        
        if(barT.getNombre() == null || barT.getNombre().isEmpty()) 
        {
            context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, 
                                                      "Se requiere un nombre.", 
                                                      "Se requiere un nombre."));
        }
        if(barT.getDireccion()== null || barT.getDireccion().isEmpty()) 
        {
            context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, 
                                                      "Se requiere una direccion.", 
                                                      "Se requiere una direccion."));
        }
        if(barT.getCodigoPostal()== null) 
        {
            context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, 
                                                      "Se requiere el código postal.", 
                                                      "Se requiere el código postal."));
        }
         if(barT.getTelefono()== null) 
        {
            context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, 
                                                      "Se requiere un telefono.", 
                                                      "Se requiere una telefono."));
        }
        if(!FacesMessagesUtil.hasMessages(context))
        {
            validado = true;
        }
        return validado;
    }
     

      
    public void onMarkerSelect(OverlaySelectEvent event) 
    {  
        marker = (Marker) event.getOverlay();  
    }  


    
     public void addMessage(FacesMessage message) {  
        FacesContext.getCurrentInstance().addMessage(null, message);  
    }  
     
     public void eliminarCerveza ()
    {
          
        context = FacesContext.getCurrentInstance();
        BaresCervezasTapasVasosTPK baresCervezasTapaspasVasosTPK = new BaresCervezasTapasVasosTPK();
        baresCervezasTapaspasVasosTPK.setIdCerveza(selectedCerveza.getCervezasT().getIdCerveza());
        baresCervezasTapaspasVasosTPK.setIdBar(barUsuarioT.getBaresT().getIdBar());
        baresCervezasTapaspasVasosTPK.setIdTapa(selectedCerveza.getTapasCervezaT().getIdTapa());
        baresCervezasTapaspasVasosTPK.setIdVaso(selectedCerveza.getVasosT().getIdVaso());
        
        if (baresCervezasTapasVasosBean.remove(baresCervezasTapaspasVasosTPK))
        {
           context
                        .addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO,
                                                           selectedCerveza.getCervezasT().getMarca() +" "+ selectedCerveza.getCervezasT().getTipo() 
                                                           +" "+ selectedCerveza.getVasosT().getTipo() +
                                                           " se ha eliminado de su lista de cervezas", 
                                                           selectedCerveza.getCervezasT().getMarca() +" "+ selectedCerveza.getCervezasT().getTipo() 
                                                           +" "+ selectedCerveza.getVasosT().getTipo() +
                                                           " se ha eliminado de su lista de cervezas"));
        }
        else
        {
            context
                        .addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR,
                                                           selectedCerveza.getCervezasT().getMarca() +" "+ selectedCerveza.getCervezasT().getTipo() 
                                                           +" "+ selectedCerveza.getVasosT().getTipo() +
                                                           " no se ha podido eliminar de su lista de cervezas", 
                                                           selectedCerveza.getCervezasT().getMarca() +" "+ selectedCerveza.getCervezasT().getTipo() 
                                                           +" "+ selectedCerveza.getVasosT().getTipo() +
                                                           " no se ha podido eliminar de su lista de cervezas"));
        }
        
        if (cervezasTBean.remove(selectedCerveza.getCervezasT()))
        {
           context
                        .addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO,
                                                           selectedCerveza.getCervezasT().getMarca() +" "+ selectedCerveza.getCervezasT().getTipo() 
                                                           +" "+ selectedCerveza.getVasosT().getTipo() +
                                                           " se ha eliminado de la lista de cervezas", 
                                                           selectedCerveza.getCervezasT().getMarca() +" "+ selectedCerveza.getCervezasT().getTipo() 
                                                           +" "+ selectedCerveza.getVasosT().getTipo() +
                                                           " se ha eliminado de la lista de cervezas"));
        }
        else
        {
            context
                        .addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR,
                                                           selectedCerveza.getCervezasT().getMarca() + selectedCerveza.getCervezasT().getTipo() +
                                                           selectedCerveza.getVasosT().getTipo() + selectedCerveza.getTapasCervezaT().getNombre() +
                                                           " no se ha podido eliminar de la lista de cervezas", 
                                                           selectedCerveza.getCervezasT().getMarca() + selectedCerveza.getCervezasT().getTipo() +
                                                           selectedCerveza.getVasosT().getTipo() + selectedCerveza.getTapasCervezaT().getNombre() +
                                                           " no se ha podido eliminar de la lista de cervezas"));
        }
        if (tapasBean.remove(selectedCerveza.getTapasCervezaT().getIdTapa())){
            
        context
                        .addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO,
                                                           "La tapa " + selectedCerveza.getTapasCervezaT().getNombre() + " se ha eliminado ", 
                                                           "La tapa " + selectedCerveza.getTapasCervezaT().getNombre() + " se ha eliminado "));
        }
        else
        {
            context
                        .addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR,
                                                           "La tapa " + selectedCerveza.getTapasCervezaT().getNombre() + " no se ha eliminado ", 
                                                           "La tapa " + selectedCerveza.getTapasCervezaT().getNombre() + " no se ha eliminado "));
        }
//        getBaresCervezasTapasVasos();
    }
     
     public void creaCerveza() { 
         
        context = FacesContext.getCurrentInstance();
        String res = "ERROR";
//        cerverzaT.setIdCerveza(39);
        TapasCervezaT tapa = new TapasCervezaT();
      
        
        if ( validatePrecio()){
            if(validateCerveza()){
                if(validateTapa()) 
            {
//                tapaT.setIdTapa(21);
                 tapa = tapasBean.update(tapaT);



                if(tapa == null) 
                {
                    context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, 
                                                              "La tapa no ha podido ser creada.", 
                                                              "La tapa no ha podido ser creada."));
                    res = "ERROR";
                }
                else 
                {
                    context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, 
                                                              "La tapa ha sido añadida", 
                                                              "La tapa ha sido añadida."));
                    res = "OK";
                    
                    
                    CervezasT cerveza = cervezasTBean.update(cerverzaT);

                    if(cerveza == null) 
                    {
//                        context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, 
//                                                                  "La cerveza no ha podido ser creada", 
//                                                                  "La cerveza no ha podido ser creada."));
                        res = "ERROR";
                    }
                    else 
                    {
//                        context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, 
//                                                                  "La cerveza ha sido añadida", 
//                                                                  "La cerveza ha sido añadida."));
                        res = "OK";
                        BaresCervezasTapasVasosTPK baresCervezasTapaspasVasosTPK = new BaresCervezasTapasVasosTPK();
                        baresCervezasTapaspasVasosTPK.setIdCerveza(cerveza.getIdCerveza());
                        baresCervezasTapaspasVasosTPK.setIdBar(barUsuarioT.getBaresT().getIdBar());
                        baresCervezasTapaspasVasosTPK.setIdTapa(tapa.getIdTapa());
                        //ESTO ESTA PUESTO PORQUE HAY UN BUG EN CHROME QUE A VECES NO DEJA ELEGIR EL TIPO DE VASO EN EL COMPONENTE
                        if(vasoT == null){
                            vasoT = new VasosT();
                            vasoT.setIdVaso(1);
                        }
                        baresCervezasTapaspasVasosTPK.setIdVaso(vasoT.getIdVaso());
                        
                        BaresCervezasTapasVasosT baresCervezasTapasVasosT = new BaresCervezasTapasVasosT();
                        baresCervezasTapasVasosT.setBaresCervezasTapasVasosTPK(baresCervezasTapaspasVasosTPK);
                        baresCervezasTapasVasosT.setPrecio(Double.parseDouble(precio));
                        baresCervezasTapasVasosT.setBaresT(barUsuarioT.getBaresT());
                        baresCervezasTapasVasosT.setCervezasT(cerveza);
                       
                        baresCervezasTapasVasosT.setVasosT(vasoT);
                        baresCervezasTapasVasosT.setTapasCervezaT(tapa);
                        BaresCervezasTapasVasosT barCervezaTapaVaso =  baresCervezasTapasVasosBean.update(baresCervezasTapasVasosT);
                         if(barCervezaTapaVaso == null) 
                                {
                                    context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, 
                                                                              "La cerveza no ha podido ser creada", 
                                                                              "La cerveza no ha podido ser creada."));
                                    res = "ERROR";
                                }
                                else 
                                {
                                    context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, 
                                                                             "La cerveza ha sido añadida", 
                                                                              "La cerveza ha sido añadida."));
                                    res = "OK";
                                    cerverzaT = new CervezasT();
                                    tapaT = new TapasCervezaT();
                                    setPrecio("");
                                    vasoT = new VasosT();
                                }
                    }   
                 
                }

             }
            }
              
        }       
    }
     
     private boolean validateCerveza() {
        
        boolean validado = true;
        
        if(cerverzaT.getMarca() == null || cerverzaT.getMarca().isEmpty()) 
        {
            context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, 
                                                      "Se requiere un marca.", 
                                                      "Se requiere un marca."));
            validado = false;
        }
        
        if(cerverzaT.getTipo()== null || cerverzaT.getTipo().isEmpty()) 
        {
            context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, 
                                                      "Se requiere un tipo.", 
                                                      "Se requiere una tipo."));
            validado = false;
        }

        return validado;
    }
     
          
     private boolean validateTapa() {
        
        boolean validado = true;
        
        if(tapaT.getNombre()== null || tapaT.getNombre().isEmpty()) 
        {
            context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, 
                                                      "Se requiere un nombre.", 
                                                      "Se requiere un nombre."));
            validado = false;
        }
        if(tapaT.getDescripcion()== null || tapaT.getDescripcion().isEmpty()) 
        {
            context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, 
                                                      "Se requiere una descripción.", 
                                                      "Se requiere una descripción."));
            validado = false;
        }
        
        return validado;
    }
     
    private boolean validatePrecio() {
        
        boolean validado = true;
        
        if(precio== null || precio.isEmpty()) 
        {
            context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, 
                                                      "Se requiere un precio.", 
                                                      "Se requiere un precio."));
            validado = false;
        }
 
        return validado;
    }
    
     public void creaOferta() {        
         context = FacesContext.getCurrentInstance();
        String res = "ERROR";
        
        if(validateOferta()) 
        {

            OfertasT oferta = ofertasTBean.update(ofertaT);
            List<OfertasT> listaOfertasBar = new ArrayList<OfertasT>();
            listaOfertasBar.add(oferta);
            BaresT barConOferta = barUsuarioT.getBaresT();
            barConOferta.setOfertasTCollection(listaOfertasBar);
            BaresT barOferta = baresTBean.update(barConOferta);
            

            if(oferta == null) 
            {
                context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, 
                                                          "La oferta no ha sido creada.", 
                                                          "La oferta no ha sido creada."));
                res = "ERROR";
            }
            else 
            {
                context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, 
                                                          "La oferta ha sido creada.", 
                                                          "La oferta ha sido creada."));
                res = "OK";

                
                ofertaT = new OfertasT();
                
                
            }
            
            
        }
        
    }
    
    private boolean validateOferta() {
        
        boolean validado = true;
        
        if(ofertaT.getDescripcion()== null || ofertaT.getDescripcion().isEmpty()) 
        {
            context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, 
                                                      "Se requiere una descripción.", 
                                                      "Se requiere una descripción."));
            validado = false;
        }
        return validado;
    }
    
        public void eliminarOferta()
    {
          
        context = FacesContext.getCurrentInstance();
        OfertasT ofertaT = new OfertasT();
        ofertaT.setIdOferta(selectedOferta.getIdOferta());
    
        
        if (ofertasTBean.remove(ofertaT))
        {
            

            Collection<OfertasT> listaOfertasBar = new ArrayList<OfertasT>();
            listaOfertasBar = barUsuarioT.getBaresT().getOfertasTCollection();
            listaOfertasBar.remove(selectedOferta);
            BaresT barConOferta = barUsuarioT.getBaresT();
            barConOferta.setOfertasTCollection(listaOfertasBar);
            BaresT barOferta = baresTBean.update(barConOferta);
            
           if (barOferta!=null){

            context
                            .addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO,
                                                               "Se ha eliminado la oferta", 
                                                               "Se ha eliminado la oferta"));
            }
            else
            {
                context
                            .addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR,
                                                               "No se ha eliminado la oferta", 
                                                               "No se ha eliminado la oferta"));
            }
        }
        else
        {
            context
                        .addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR,
                                                           "No se ha eliminado la oferta", 
                                                           "No se ha eliminado la oferta"));
        }
        

//        getBaresCervezasTapasVasos();
    }
    
    
     public void handleFileUpload(FileUploadEvent event) {
        
        
       
        try {
            File targetFolder = new File("/Users/Denver/NetBeansProjects/BirrApp/BirrApp-war/web/images/bares");
//            File targetFolder = new File("/var/webapp/uploads");
            String filename = targetFolder.getName();
            InputStream inputStream = event.getFile().getInputstream();
            OutputStream out = new FileOutputStream(new File(targetFolder,
                    event.getFile().getFileName().replaceAll(" ", "_")));
            int read = 0;
            byte[] bytes = new byte[2048];

            while ((read = inputStream.read(bytes)) != -1) {
                out.write(bytes, 0, read);
            }
            inputStream.close();
            out.flush();
            out.close();
            
//            copiaServer("/upload/",event.getFile().getFileName(), inputStream);
//            ultimoSubido();
            
            updateFoto(event.getFile().getFileName());
            
            
        } catch (IOException e) {
            e.printStackTrace();
        
       
        }
    }
    
    public void updateFoto(String foto) {        
        String res = "ERROR";
        
            context = FacesContext.getCurrentInstance();
            foto = foto.replaceAll(" ", "_");
            //FALTA POR CONCRETAR MAS LA CADENA DEL NOMBRE DE LA FOTO PARA QUE NO ACEPTE CADENAS INVALIDAS DE NOMBRE DE FOTO
            barUsuarioT.getBaresT().setFoto(foto);
            BaresT bar = baresTBean.update(barUsuarioT.getBaresT());

            if(bar == null) 
            {
                context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, 
                                                          "La foto no ha podido ser subida.", 
                                                          "La foto no ha podido ser subida."));
                res = "ERROR";
            }
            else 
            {
                context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, 
                                                          "La foto se ha subido. Vuelva a entrar en la página para ver el cambio", 
                                                          "La foto se ha subido. Vuelva a entrar en la página para ver el cambio."));
                res = "OK";
                
            }
    }
    
//        public void ultimoSubido(){
//        
//        BaresUsuarioT barUsuario = baresUsuarioBean.findBaresTUltimosubidobyDueno(usuario.getCorreo());
//        barTUlitmo =  barUsuario.getBaresT();
//        
//    }
    

    public BaresUsuarioT getBarUsuarioT() {
        return barUsuarioT;
    }

    public void setBarUsuarioT(BaresUsuarioT barUsuarioT) {
        this.barUsuarioT = barUsuarioT;
            if(barUsuarioT != null)
        {
            if(barUsuarioT.getBaresT().getFoto() != null && !barUsuarioT.getBaresT().getFoto().isEmpty())
            {
                fotoBar = RUTA_IMAGEN;
                fotoBar = fotoBar.concat(barUsuarioT.getBaresT().getFoto());
            }
            else
            {
                fotoBar = RUTA_IMAGEN;
                fotoBar = fotoBar.concat(IMAGEN_NO_DISPONIBLE);
            }
        }
        if(this.barUsuarioT != null && this.barUsuarioT.getBaresT().getIdBar() != null)
        {
            initializeMap();
        }
        
        if(barUsuarioT != null && barUsuarioT.getBaresT().getTelefono() != null)
        {
            isTelefono = true;
        } 
    }
    
    
    public List<BaresCervezasTapasVasosT> getListaCervezas()
          {
              
        if(barUsuarioT!=null){
            

            
            listaCervezas = new ArrayList<BaresCervezasTapasVasosT>();
            List<BaresCervezasTapasVasosT> coleccionBares = 
                    new ArrayList(baresCervezasTapasVasosBean.findBaresByIdBar(barUsuarioT.getBaresT().getIdBar()));


            for(int i=0; i!=coleccionBares.size(); i++)
            {

                    if(coleccionBares.get(i)!=null  && listaCervezas!=null){
                        listaCervezas.add(coleccionBares.get(i));

                }
            }
        }
        return listaCervezas;
    }
    
    
    public List<OfertasT> getListaOfertas()
          {
              
        if(barUsuarioT!=null){
              
            listaOfertas = new ArrayList<OfertasT>();
            List<OfertasT> coleccionBares = new ArrayList<OfertasT>();
            
            if(barUsuarioT.getBaresT().getOfertasTCollection()!=null){
                
            
                coleccionBares = new ArrayList(barUsuarioT.getBaresT().getOfertasTCollection());
            }

            for(int i=0; i!=coleccionBares.size(); i++)
            {

                    if(coleccionBares.get(i)!=null  && listaOfertas!=null){
                        listaOfertas.add(coleccionBares.get(i));

                }
            }
        }
        return listaOfertas;
    }
    

    
     public MapModel getAdvancedModel() 
        {  
            return advancedModel;  
        }  
          
 
        
    
     public Double getCenterLatitude() {
        return centerLatitude;
    }

    public void setCenterLatitude(Double centerLatitude) {
        this.centerLatitude = centerLatitude;
    }

    public Double getCenterLongitude() {
        return centerLongitude;
    }

    public void setCenterLongitude(Double centerLongitude) {
        this.centerLongitude = centerLongitude;
    }
    
    public boolean isIsTelefono() {
        return isTelefono;
    }

    public void setIsTelefono(boolean isTelefono) {
        this.isTelefono = isTelefono;
    }
    
    public String getFotoBar() {
        return fotoBar;
    }

    public void setFotoBar(String fotoBar) {
        this.fotoBar = fotoBar;
    }
    
        
    public Marker getMarker() 
    {  
        return marker;  
    } 
    
      
    public MapModel getEmptyModel() {  
        return emptyModel;  
    }  
            
  
    public double getLat() {  
        return lat;  
    }  
  
    public void setLat(double lat) {  
        this.lat = lat;  
    }  
  
    public double getLng() {  
        return lng;  
    }  
  
    public void setLng(double lng) {  
        this.lng = lng;  
    }  

    public BaresCervezasTapasVasosT getSelectedCerveza() {
        return selectedCerveza;
    }

    public void setSelectedCerveza(BaresCervezasTapasVasosT selectedCerveza) {
        this.selectedCerveza = selectedCerveza;
    }

    public CervezasT getCerverzaT() {
        return cerverzaT;
    }

    public void setCerverzaT(CervezasT cerverzaT) {
        this.cerverzaT = cerverzaT;
    }

    public VasosT getVasoT() {
        return vasoT;
    }

    public void setVasoT(VasosT vasoT) {
        this.vasoT = vasoT;
    }

    public List<VasosT> getListaVasosT() {
        
        List<VasosT> listaVasos = vasosBean.findAll();
        if(!listaVasos.isEmpty() || listaVasos != null){
            listaVasosT = vasosBean.findAll();
        }
        return listaVasosT;
    }

    public String getPrecio() {
        return precio;
    }

    public void setPrecio(String precio) {
        this.precio = precio;
    }


    public TapasCervezaT getTapaT() {
        return tapaT;
    }

    public void setTapaT(TapasCervezaT tapaT) {
        this.tapaT = tapaT;
    }

    public boolean isRenderTabla() {
        return renderTabla;
    }

    public void setRenderTabla(boolean renderTabla) {
        this.renderTabla = renderTabla;
    }
    
        public boolean isRenderTabla2() {
        return renderTabla2;
    }

    public void setRenderTabla2(boolean renderTabla2) {
        this.renderTabla2 = renderTabla2;
    }

    public OfertasT getOfertaT() {
        return ofertaT;
    }

    public void setOfertaT(OfertasT ofertaT) {
        this.ofertaT = ofertaT;
    }

    public OfertasT getSelectedOferta() {
        return selectedOferta;
    }

    public void setSelectedOferta(OfertasT selectedOferta) {
        this.selectedOferta = selectedOferta;
    }
    
      
    
}
